// 进阶排序算法，时间复杂度O(nlogn)
#ifndef AD_SORT_H
#define AD_SORT_H
#include "../linear-table/model/sq-list.h"

/**
 * 希尔排序算法
 * @param list 待排序的顺序表
 */
void shellSort(SqList &);

/**
 * 堆排序算法
 * @param list 待排序的顺序表
 */
void heapSort(SqList &);

/**
 * 归并排序算法（递归）
 * @param list 待排序的顺序表
 */
void mergeSortR(SqList &);

/**
 * 归并排序算法（迭代）
 * @param list 待排序的顺序表
 */
void mergeSort(SqList &);

/**
 * 快速排序算法
 * @param list 待排序的顺序表
 */
void quickSort(SqList &);

#include "./advance-sort.cpp"

#endif